soapui测试接口怎么设置 |
您所在的位置:网站首页 › soapui测试接口 wsdl › soapui测试接口怎么设置 |
文章目录
一、SoapUI二、SoapUI测试REST类型接口1. REST 协议类型的测试2. POST接口测试(1) 简单的某个接口测试(2) 组织多条用例测试
3. GET接口测试
三、SoapUI测试SOAP类型接口1. SOAP 协议类型的测试2. 测试外部系统接口的文档3. 测试业务4. SOAP请求与响应源码5. 同理可测试其他Web服务接口
四、博主原创手动码字,喜欢记得收藏点赞
一、SoapUI
先引用 SoapUI 官网一段官方介绍作为开篇 无论是开源的还是商业的,SoapUI 测试工具都可以轻松地在 REST,SOAP 和 GraphQL API,JMS,JDBC和其他Web服务上创建,管理并执行端到端测试,所以您可以比以往更快地交付软件。 当然官网中提到的一些高级功能,如GraphQL API 测试只限 Pro 版, 开源版下载可前往 SoapUI官网,安装很简单并无特殊设置。由 SoapUI 的特性可知,REST 和 SOAP 协议类型的接口测试都是支持的,当然它尤其擅长 SOAP 类型,所以笔者我重点详细地介绍下这两种协议类型的接口测试过程。 二、SoapUI测试REST类型接口 1. REST 协议类型的测试REST:Representational State Transfer,能完全通过 HTTP 协议实现的轻量级Web Service架构。 新建 REST 工程 输入URI,也就是服务器地址端口Request 接口请求中,配置接口相关信息: 接口请求方法(GET/POST/…),接口请求的服务器地址( http://ip:port ),接口路径,接口请求参数。 2. POST接口测试 (1) 简单的某个接口测试禅道登录接口: 接口文档四要素值接口请求方法post-XML接口请求地址http://118.25.179.224:1180/zentao/user-login.html接口请求参数account:test001 password:123456预期结果包含跳转的页面依据《接口文档》在 Request 窗口中依次输入: 配置项配置值MethodPOSTEndpointhttp://118.25.179.224:1180Resource/zentao/user-login.htmlParameters?account=test001&password=123456运行后,得到响应代码。可以增加断言,来测试所响应的代码是否包含或符合预期结果。 (2) 组织多条用例测试工程的树状结构为: REST Project - URI - TestSuite - TestCase - TestStep - REST Request - 测试套件 - 测试用例 - 测试步骤 - REST请求REST 工程 中新建测试套件 TestSuite TestSuite 中新建 TestCase 测试用例 TestCase 下自带 TestSteps 测试步骤, 选择 Add Step 里的 REST Request 新建 REST 请求 选择 REST 方法 同理,TestSuite 中可创建多个 TestCase,进而每个 TestCase 创建多个 TestSteps Request 配置中的 Assertions + 号增加断言 输入 Contains Assertion 包含型断言的 Content 内容 此外,还有不包含断言,Xpath Match 断言等 通过 TestSuite 批量执行其中的全部测试用例 也可以使用 TestRunner 测试运行器批量执行 3. GET接口测试测试网易云音乐镜像 http://118.25.179.224:3001/search?keywords=青花瓷 接口文档四要素值接口请求方法GET接口请求地址http://118.25.179.224:3001/search接口请求参数keywords=青花瓷预期结果包含跳转的页面注:get 请求参数会对中文进行URL编码,所以使用URL编码解码工具 即可 REST 工程中增加新的 URI (通过 URI 新建 REST 服务) 输入 URI 服务器地址接口 设置好 Request 请求配置项后运行,得到 JSON 格式的响应数据。可以看到响应内容包含预期结果“青花瓷”。 在 TestSuite 1中增加 MyCloudMusicTest 测试用例,并且 Add Step 添加测试步骤 选择对应的测试接口,去测试接口功能是否正确 三、SoapUI测试SOAP类型接口 1. SOAP 协议类型的测试SOAP(Simple Object Access Protocol)可简单理解为:RPC+HTTP+XML。 HTTP作为通信协议,RPC 作为调用途径协议,XML作为数据传输格式,允许服务提供者和客户进行通信交互。 如果要开展SOAP协议接口测试,必须拿到接口文档,WSDL文档,WSDL包含了多个接口。每个向服务器调用的方法,都是要向服务器发去请求,每个请求的方法都是对外提供的接口。 2. 测试外部系统接口的文档测试外部系统接口:以webxml官网所提供的外部天气接口的测试为例。 以下是天气接口wsdl文档一般用于机器识别导入 以下是天气接口asmx文档一般用于测试工程师阅读 3. 测试业务测试天气接口,获取浙江省杭州市的天气(p.s.明天要去西湖玩咯) 😃 新建一个 SOAP项目,并输入 WSDL 文档的路径,从而生成项目导入接口方法。 然后看到接口文档中的方法与SoapUI导入的逐一对应。再阅读 asmx 接口文档,熟悉每个接口功能,以便下一步测试开展。 新建 TestSuite (测试套件) – TestCase (测试用例) – Test Steps (测试步骤),在 TestSteps 右键菜单中 – Add Step (添加测试步骤) – SOAP Request (新建SOAP类型请求) 在出现的 TestRequest 测试请求中,选择对应要测试的接口,如 getWeather 为方便使用可自定义用例或测试请求的名称。当紧接着上一步后,打开 getWeather 这个 Soap 请求,直接运行会返回 “服务器无法处理请求”,原因是这是付费接口。当然,只需要在webxml官网注册免费得到 UserID,作为学习可免费试用,若是商用可以支持购买。需要明确的是,上图的 TestCase -> TestSteps —>(getWeather)Request,必须和下图的 WeatherWSSoap —> getWeather —> Request 中两个 Request 的请求参数 theCityCode,theUserID 保持一致,才能被服务器正常处理请求从而访问。 所以不难理解,之后要把上图的(getWeather)Request 的单标签改为双标签,并填写所需参数。 theCityCode 的获取 先通过 getRegionProvince 获得中国省市区的id编码,比如浙江为31119。再通过 getSupportCityDataset 获得某省市区如“浙江省”的城市id编码,比如杭州为2057,即 getWeather 请求中必须包含的参数 theCityCode 最后才通过 getWeather 获得某城市的天气,比如杭州2057的天气。 theUserID 的获取 注册 会员专区,获取到 Web 服务的用户 ID,即 getWeather 请求中必须包含的参数 theUserID点"如何使用"可看到官网介绍: WEB服务用户ID使用说明 用户ID由32位的英文字母和数字组成。 可以在WEB服务上的方法的 UserID 参数中输入,如果没有输入 UserID 参数输入选项就使用以下方法: 参数+英文冒号+用户ID 如中国股票信息WEB服务上证指数输入:sh000001:xxxxxxxxxxx 最后进入 “我的Web服务” 选择试用,即可获得自己的测试次数。 TestCase -> TestSteps —>(getWeather)Request 输入获取到的 theCityCode:2057,theUserID:xxxxx 执行 “测试获取天气 getWeather” Soap 协议接口请求,接口会返回杭州市当日的天气状况。 最后,可在 Assertions 中添加 Contains Aseertion 等断言,测试接口返回值的正确性。 4. SOAP请求与响应源码附上 Request 源码 2057 xxxxxxxxxxxxxxxx 浙江 杭州 杭州 2057 2020/09/02 00:50:31 今日天气实况:气温:25℃;风向/风力:北风 1级;湿度:90% 紫外线强度:中等。 5. 同理可测试其他Web服务接口webxml官网的Web服务十分丰富,有兴趣可以试用其他接口服务进行测试,若商用请支持选择正版。 以下是电视节目预告的测试,接口测试分析过程与上面同理,不再赘述。 四、博主原创手动码字,喜欢记得收藏点赞博主(CSDN@崔同学)唯一首发CSDN,原创手动码字,感谢阅读到这里,喜欢记得收藏点赞哦 😉 ღ( ´・ᴗ・` ) |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |